home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-01 / lcppb.zip / LCPP09.ZIP / POINTIN.CPP < prev    next >
C/C++ Source or Header  |  1991-07-08  |  1KB  |  55 lines

  1. // pointin.cpp -- Demonstrate overloading input streams
  2.  
  3. //#include <stream.hpp>
  4. #include <iostream.h>
  5.  
  6. class point {
  7.   private:
  8.     int x, y;
  9.   public:
  10.     point() { x = y = 0; }
  11.     point(int xx, int yy) { x = xx; y = yy; }
  12.     void putx(int xx) { x = xx; }
  13.     void puty(int yy) { y = yy; }
  14.     int getx(void) { return x; }
  15.     int gety(void) { return y; }
  16.     friend ostream& operator<<(ostream& os, point &p);
  17.     friend istream& operator>>(istream& is, point &p);
  18. };
  19.  
  20. main()
  21. {
  22.   point p;
  23.  
  24.   cout << p << '\n';
  25.  
  26.   p.putx(100);
  27.   p.puty(200);
  28.  
  29.   cout << p << '\n';
  30.  
  31.   cout << "\nEnter x and y values: ";
  32.   cin >> p;
  33.   cout << "\nYou entered: " << p;
  34. }
  35.  
  36. ostream& operator<<(ostream& os, point &p)
  37. {
  38.   os << "x == " << p.x << ", y == " << p.y;
  39.   return os;
  40. }
  41.  
  42. istream& operator>>(istream& is, point &p)
  43. {
  44.   is >> p.x >> p.y;
  45.   return is;
  46. }
  47.  
  48.  
  49. // Copyright (c) 1990 by Tom Swan. All rights reserved
  50. // Revision 1.00    Date: 11/24/1990   Time: 11:56 pm
  51.  
  52. // Revision 1.01    Date: 07/08/1991   Time: 05:41 pm
  53. // Converted for Borland C++ 2.0
  54.  
  55.